
typedef int ElemType;

#define MAX_STACK_SIZE 48

struct DoubleStack{
    ElemType *data;
    int top1;
    int top2;
    unsigned int capacity;
};
typedef struct DoubleStack DubStack;

enum StackName {a=1,b};
typedef enum StackName stack_name;

int InitStack(DubStack *stack);
int DestroyStack(DubStack *stack);
int ClearStack(DubStack *stack,stack_name name);
int StackEmpty(DubStack stack,stack_name name);
int GetTop(DubStack stack,ElemType *e,stack_name name);
int Push(DubStack *stack,ElemType e,stack_name name);
int Pop(DubStack *stack,ElemType *e,stack_name name);
int StackLength(DubStack stack,stack_name name);